package basicas;


import java.util.Collection;
import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;




@Entity
@PrimaryKeyJoinColumn(name="codigo")
public class Compra extends ObjetoGeral{


	@Temporal(TemporalType.TIMESTAMP)
	private Date dataCompra;
	@Enumerated(EnumType.STRING)
	private TipoFormaPagamento tipoFormaPagamento;
	//private FormaPagamento formaPagamento;
	@Enumerated(EnumType.STRING)
	private Status status;
	@OneToOne
	private Usuario usuario;
	@OneToMany(mappedBy="compra")
	private Collection<PasseComprado> listaPasseComprado;

	public Date getDataCompra() {
		return dataCompra;
	}
	public void setDataCompra(Date dataCompra) {
		this.dataCompra = dataCompra;
	}
	public TipoFormaPagamento getTipoFormaPagamento() {
		return tipoFormaPagamento;
	}
	public void setTipoFormaPagamento(TipoFormaPagamento tipoFormaPagamento) {
		this.tipoFormaPagamento = tipoFormaPagamento;
	}

	public Status getStatus() {
		return status;
	}

	public void setStatus(Status status) {
		this.status = status;
	}
	public Usuario getUsuario() {
		return usuario;
	}
	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	public Collection<PasseComprado> getListaPasseComprado() {
		return listaPasseComprado;
	}
	public void setListaPasseComprado(Collection<PasseComprado> listaPasseComprado) {
		this.listaPasseComprado = listaPasseComprado;
	}
	
}
